/* http://danielstern.ca/range.css/#/ */

input[type=range] {
    -webkit-appearance: none;
    background: transparent;
    touch-action: none;
  }
  input[type=range]:focus {
    outline: none;
  }
  input[type=range]::-webkit-slider-runnable-track {
    width: 80%;
    height: calc(var(--width-unit) * 1);
    cursor: pointer;
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
    background: #646464;
    border-radius: 1.3px;
    border: 0.2px solid #010101;
  }
  input[type=range]::-webkit-slider-thumb {
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
    border: 3.4px solid #000000;
    height: calc(var(--width-unit) * 8);
    width: calc(var(--width-unit) * 5);
    border-radius: 10px;
    background: #ffffff;
    cursor: pointer;
    -webkit-appearance: none;
    margin-top: calc(var(--width-unit) * -3.7);
  }
  input[type=range]:focus::-webkit-slider-runnable-track {
    background: #7e7e7e;
  }
  input[type=range]::-moz-range-track {
    width: 100%;
    height: 8.4px;
    cursor: pointer;
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
    background: #646464;
    border-radius: 1.3px;
    border: 0.2px solid #010101;
  }
  input[type=range]::-moz-range-thumb {
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
    border: 3.4px solid #000000;
    height: 39px;
    width: 20px;
    border-radius: 10px;
    background: #ffffff;
    cursor: pointer;
  }
  input[type=range]::-ms-track {
    width: 100%;
    height: 8.4px;
    cursor: pointer;
    background: transparent;
    border-color: transparent;
    color: transparent;
  }
  input[type=range]::-ms-fill-lower {
    background: #4a4a4a;
    border: 0.2px solid #010101;
    border-radius: 2.6px;
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
  }
  input[type=range]::-ms-fill-upper {
    background: #646464;
    border: 0.2px solid #010101;
    border-radius: 2.6px;
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
  }
  input[type=range]::-ms-thumb {
    box-shadow: 1px 1px 1px #000000, 0px 0px 1px #0d0d0d;
    border: 3.4px solid #000000;
    height: 39px;
    width: 20px;
    border-radius: 10px;
    background: #ffffff;
    cursor: pointer;
    height: 8.4px;
  }
  input[type=range]:focus::-ms-fill-lower {
    background: #646464;
  }
  input[type=range]:focus::-ms-fill-upper {
    background: #7e7e7e;
  }
  
  /* https://codepen.io/vkjgr/pen/VYMeXp */

  select {
    background-image:
      linear-gradient(45deg, transparent 50%, gray 50%),
      linear-gradient(135deg, gray 50%, transparent 50%);
    background-position:
      calc(100% - 20px) calc(1em + 2px),
      calc(100% - 15px) calc(1em + 2px),
      calc(100% - 2.5em) 0.5em;
    background-size:
      5px 5px,
      5px 5px,
      1px 1px;
    background-repeat: no-repeat;
  }
  
  select:focus {
    background-image:
      linear-gradient(45deg, gray 50%, transparent 50%),
      linear-gradient(135deg, transparent 50%, gray 50%);
    background-position:
      calc(100% - 15px) 1em,
      calc(100% - 20px) 1em,
      calc(100% - 2.5em) 0.5em;
    background-size:
      5px 5px,
      5px 5px,
      1px 1px;
    background-repeat: no-repeat;
    outline: 0;
  }

  